// pages/user/login/login.js

// 获取应用实例
const app = getApp()

Page({
    data: {
        avatarUrl:"",
        userInfo: {},
        hasUserInfo: false,
        canIUseGetUserProfile: false,
    },

    clickLogin: function () {
        wx.login({
            success(res) {
                console.log("js_code", res.code)
                if (res.code) {
                    //发起网络请求
                    wx.request({
                        url: 'http://localhost:8080/user/getWxInfo',
                        method: 'post',
                        data: {
                            code: res.code
                        },
                        header: {
                            'content-type': 'application/json' // 明确指定JSON格式
                        },
                        success: (res) => {
                            this.setData({ // 现在可以正确访问 this
                                wxInfo: res.data
                            });

                            wx.setStorageSync('openid', res.data.openid)
                        },
                    })
                } else {
                    console.log('登录失败！' + res.errMsg)
                }
            }
        })
    },

    onChooseAvatar(e) {
        console.log(e.detail.avatarUrl)
      },

    onChooseAvatar(e){
      const { avatarUrl } = e.detail
      promisify(wx.getFileSystemManager().getFileInfo)({  filePath: avatarUrl })
      .then((fileInfo) => {
        let fileSize = fileInfo.size;
        // 文件大小 kb
        fileSize = Math.ceil(fileSize / 1024).toFixed(2);
        if(fileSize > (1024 * 5)){
          wx.showToast({
            title: '头像大小请不要超过5M',
            icon:"none"
          })
          return Promise.reject();
        }
        return fileInfo;
      }).then(()=>{
        console.log("------成功设置头像------");
        this.setData({
          avatarUrl,
        })
        this.observerCanSaveUser();
      }).catch(err=>{
        console.log(err);
      })
    },

    onChooseAvatar(e){
        const { avatarUrl } = e.detail
        promisify(wx.getFileSystemManager().getFileInfo)({  filePath: avatarUrl })
        .then((fileInfo) => {
          let fileSize = fileInfo.size;
          // 文件大小 kb
          fileSize = Math.ceil(fileSize / 1024).toFixed(2);
          if(fileSize > (1024 * 5)){
            wx.showToast({
              title: '头像大小请不要超过5M',
              icon:"none"
            })
            return Promise.reject();
          }
          return fileInfo;
        }).then(()=>{
          console.log("------成功设置头像------");
          this.setData({
            avatarUrl,
          })
          this.observerCanSaveUser();
        }).catch(err=>{
          console.log(err);
        })
      },
    // clickinfo: function () {
        
    // },


    getUserProfile(e) {
        // 推荐使用wx.getUserProfile获取用户信息，开发者每次通过该接口获取用户个人信息均需用户确认
        // 开发者妥善保管用户快速填写的头像昵称，避免重复弹窗
        wx.getUserProfile({
            desc: '用于完善会员资料', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
            success: (res) => {
                this.setData({
                    userInfo: res.userInfo,
                    hasUserInfo: true
                })
            }
        })
    },

    /**
     * 页面的初始数据
     */
    data: {

    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        if (wx.getUserProfile) {
            this.setData({
              canIUseGetUserProfile: true
            })
          }
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})